"""
上篇文章基本都在讲述如何用好一个对象，那么这篇文章就要讲怎么设计好一个类，让这个类更好的进行逻辑的抽离，更好的进行复用。

所以这篇文章，都是围绕着 类的三大特性

封装
继承
多态

废话不多说，我们直接开始介绍
"""

# 封装
"""
这里的封装，和我们之前接触的 封装函数 有类似的效果

就是 将一段可复用的代码逻辑封装成一个函数

但显然，类的封装要比函数的封装更加高级。

因为类可以根据不同的对象属性来决定内部函数的走向。

换而言之，就是你和我都是人，但是我会的东西你不一定会；又或者说你我都会的技能，我也许会比你做得更快更好。

说了这么多，封装其实就是像我们上篇文章学过的一样，就是封装 属性/方法，然后根据敏感度来决定要不要把它们变成 私有属性/方法。
"""


class Login():
    __userConfig = {

    }

    @classmethod
    def login(cls, userName, password):
        result = True
        if cls.__userConfig.get(userName):  # 如果账号存在
            if password != cls.__userConfig[userName]:  # 如果密码一样
                print("密码错误")
                result = False
        else:
            result = False
            print("账号不存在")
        return result

    @classmethod
    def register(cls, userName, password):
        result = True
        if cls.__userConfig.get(userName):  # 如果账号存在
            result = False
            print("账号已存在，请勿重复登录")
        else:
            cls.__userConfig[userName] = password
            print("账号注册成功")
        return result